package com.link_with_health.service;

import com.link_with_health.exception.BaseException;
import com.link_with_health.mapper.InquiryMapper;
import com.link_with_health.model.InquiryEntity;

import java.util.List;
public interface InquiryService {

    /**
     * 通过问诊id获取问诊信息
     * @param caseId 问诊信息
     * @return 问诊信息
     * @throws BaseException 异常
     */
    InquiryEntity getInquiryById(Long caseId) throws BaseException;

    /**
     * 通过患者信息获取问诊信息
     * @param patientId 患者信息
     * @return 问诊信息
     * @throws BaseException 异常
     */
    List<InquiryEntity> getInquiryByPatientId(Long patientId) throws BaseException;

    /**
     * 通过医生id获取会诊信息
     * @param DrId 医生id
     * @return  会诊信息
     * @throws BaseException 异常
     */
    List<InquiryEntity> getInquiryByDrId(Long DrId) throws BaseException;

    /**
     * 通过用户id获取会诊信息
     * @param userId 用户id
     * @return  会诊信息
     * @throws BaseException 异常
     */
    List<InquiryEntity> getInquiryByUserId(Long userId) throws BaseException;

    /**
     * 获取所有问诊信息
     * @return  问诊信息
     * @throws BaseException 异常
     */
    List<InquiryEntity> getAllInquiry() throws BaseException;

    /**
     * 修改问诊信息
     * @param inquiry 问诊信息
     * @return  改动数量
     * @throws BaseException 异常
     */
    int changeInquiry(InquiryEntity inquiry) throws BaseException;

    /**
     * 增加问诊信息
     * @param inquiry 问诊信息
     * @return  改动数量
     * @throws BaseException 异常
     */
    int addInquiry(InquiryEntity inquiry) throws BaseException;

    /**
     * 删除问诊信息
     * @param caseId 问诊id
     * @return  改动数量
     * @throws BaseException
     */
    int deleteInquiry(Long caseId) throws BaseException;
}
